const {update,updateRaw}=require('../lib/update');

const data1={
    a:{
        c:{e:'e'},
        d:[0]
    }
};
console.log(data1);
console.log(update(data1,{
    'a.c':1,
    'a.d.$push':[2]
}));
console.log(updateRaw(data1,{
    a:{
        c:{
            $set:1
        },
        d:{
            $push:[2]
        }
    }
}));

console.log(update(data1,{
    a:{
        'c.d':'c.d'
    }
}));
console.log(update(data1,{
    'b.c':'123'
}));
try{
    console.log(updateRaw(data1,{
        b:{
            c:{
                $set:'123'
            }
        }
    }));
}catch(ex){
    console.log(ex);
}
console.log(update(data1,{
    'm.0.c':'m0c'
}));